is java fully object oriented